<?php
// +----------------------------------------------------------------------
// | INPHP
// | Copyright (c) 2023 https://inphp.cc All rights reserved.
// | Licensed ( https://opensource.org/licenses/MIT )
// | Author: 幺月儿(https://gitee.com/lulanyin) Email: inphp@qq.com
// +----------------------------------------------------------------------
// | 数据库、redis 配置文件
// +----------------------------------------------------------------------
return [
    //pdo
    "pdo"         => [
        //是否打开调式模式，会在控制台输出某些内容
        "debug"         => false,
        //数据库类型(当前内置的链式操作、语法处理等仅支持mysql，其它类型数据库均未测试!!!!!!)
        "driver"        => "mysql",
        //默认遍历方式
        "fetchModel"    => PDO::FETCH_ASSOC,
        //表名前缀，为了方便使用，读写分离的前缀必须统一
        "tablePrefix"   => "pre_",
        //超时
        "timeout"       => 3,
        //允许重连次数
        "reconnectTimes"=> 5,
        //字符集
        "charset"       => "utf8mb4",
        //日志文件位置
        "errorLogFile"  => RUNTIME."/db/error.txt",
        //执行日志保存的目录，所有 insert, update, delete 都会保存到该文件夹，如果不保存，请填写 null/false，按天保存文件
        "executeLogDir" => RUNTIME."/db/execute",
        //保留关键字
        "keywords"      => [
            //可以添加数据库的保留关键字，以便处理字段...
        ],
        //默认连接，若使用读写分离，可以不定义
        "default"       => [
            //服务器地址
            "host"      => "127.0.0.1",
            //端口
            "port"      => 3306,
            //数据库用户名
            "username"  => "root",
            //密码
            "password"  => "12345678",
            //数据库名
            "dbname"    => "inphp",
            //选项
            "options"   => [
                //mysql选项，防乱码
                PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8mb4';",
                //使用缓冲区
                PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
                //为了兼容不同的数据服务端配置，数据统一输出为字符串，客户端数据判断时，请注意使用 === 还是 ==
                PDO::ATTR_STRINGIFY_FETCHES => true
            ]
        ],
        //读写可以分离，需要自行实现数据同步
        //"read"         => [],
        //"write"        => [],
        //连接池数量，读和写是分开计算的，实际连接池数量是 pools * 2
        "pools"         => 20,
    ],
    //redis 缓存
    "redis"         => [
        //服务器地址
        "host"      => "127.0.0.1",
        //端口
        "port"      => 6379,
        //密码
        "password"  => "",
        //选择库
        "select"    => 0,
        //超时
        "timeout"   => 3,
        //读超时时间
        "readTimeout" => 3,
        //缓存过期时间，-1为永不过期
        "expire"    => 86400,
        //重试间隔
        "retryInterval" => 0,
        //缓存名前缀
        "prefix"    => "inphp_",
        //连接池数量
        "pools"     => 64
    ]
];